package com.ybkj.daijia.server.mapper;

import com.ybkj.daijia.server.model.AppUpdateInfo;
import com.ybkj.daijia.server.model.AppVersion;
import com.ybkj.daijia.server.model.AppVersion.AppVersionType;
import java.util.List;

public interface AppVersionMapper {

    /**
     * 保存版本信息到数据库
     *
     * @param record
     * @return 保存成功返回Id信息
     */
    Long insertRecord(AppVersion record);

    /**
     * 根据主键查询版本信息
     *
     * @param id
     * @return
     */
    AppVersion selectByPrimaryKey(Long id);

    /**
     * 查询所有版本信息
     *
     * @return
     */
    List<AppVersion> selectAll();

    /**
     * 根据版本类型查询版本信息
     *
     * @param appVersionType
     * @return
     */
    AppVersion selectByAppVersionType(AppVersionType appVersionType);

    /**
     * 根据一组主键查询版本信息
     *
     * @param ids
     * @return
     */
    List<AppVersion> selectByIdIn(Long[] ids);

    /**
     * 根据主键删除版本信息
     *
     * @param id
     * @return 返回影响的行数
     */
    int deleteByPrimaryKey(Long id);

    /**
     * 根据主键修改数据
     *
     * @param record
     * @return
     */
    int updateByPrimaryKey(AppVersion record);

    /**
     * 查询app更新历史信息
     *
     * @return
     */
    AppUpdateInfo selectUpdateInfo();

}
